Skip to content

fix: green main CI — Hypatia SD022 (sibling doc) + crossbeam-epoch advisory#179

Merged
hyperpolymath merged 2 commits into
mainfrom
claude/neurophone-repo-setup-envzix
Jul 9, 2026
Merged

fix: green main CI — Hypatia SD022 (sibling doc) + crossbeam-epoch advisory#179
hyperpolymath merged 2 commits into
mainfrom
claude/neurophone-repo-setup-envzix

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

Summary

#178 merged with two checks red; both are now red on main. This follow-up greens them. Neither is a regression in application code — one is a cross-repo-awareness gap in a scanner heuristic, the other a newly-published upstream advisory.

Changes

  • docs/governance/SIBLING-INTEGRATIONS.adoc — the new governance doc from docs(ecosystem): ground-truth sibling integrations + launcher carve-out #178 tripped two structural_drift/SD022 findings (doc references src/Burble/, doc references src/core/). Hypatia's rename-drift heuristic has no cross-repo awareness, so it flags any src/<dir>/ it cannot resolve locally — even a path the doc explicitly attributes to a sibling repo. Rather than add two more acknowledged false-positives to .hypatia-baseline.json, the two sibling artefacts are now cited by module/file name (Burble.ABI.NearbyPresence Idris2 module; panll's EventChain.res parser) instead of by src/<dir>/ path. Accurate, and the SD022 trigger disappears — so the gate stays maximally strict with no new suppressions.
  • Cargo.lock — bump crossbeam-epoch 0.9.18 → 0.9.20 for RUSTSEC-2026-0204 (published 2026-07-06: invalid pointer dereference in the fmt::Pointer impl for Atomic/Shared). It is a transitive dependency, so the advisory turned rust-ci / Cargo audit red on every branch without any local code change. Surgical cargo update -p crossbeam-epoch --precise 0.9.20; only the version + checksum move (the crate's own crossbeam-utils dep is unchanged).

RSR Quality Checklist

Required

  • Tests pass — no application code changed; lockfile patch bump + doc wording
  • Code is formatted (cargo fmt --check) — verified clean
  • Linter clean — no Rust source changed
  • No banned language patterns
  • No unsafe without // SAFETY: — n/a
  • No proof escape hatches — n/a
  • SPDX headers present — files pre-existing/headered
  • No secrets included

As Applicable

  • .machine_readable/6a2/* — not needed
  • Documentation updated (governance doc wording)
  • New dependencies reviewed — patch bump of an existing transitive dep, same licence

Testing

  • cargo update -p crossbeam-epoch --precise 0.9.20 resolved the full graph (incl. the conative-gating git dep) and moved only that crate → crossbeam-epoch v0.9.18 -> v0.9.20.
  • cargo fmt --check → exit 0.
  • SD022 reproduction: the Hypatia baseline job reported exactly these two medium SD022 findings as baseline_status: "new" on docs/governance/SIBLING-INTEGRATIONS.adoc; the reword removes every src/<dir>/ dir-form (only the real local file crates/claude-client/src/lib.rs remains, which does not match the heuristic).
  • Full cargo build/cargo audit are verified in CI (local build is gated on the external conative-gating egress).

🤖 Generated with Claude Code

https://claude.ai/code/session_0172RBMz3qYjb1ttzD2i7RNh


Generated by Claude Code

claude added 2 commits July 9, 2026 21:44
#178 merged with the Hypatia baseline red: the new SIBLING-INTEGRATIONS.adoc
tripped two `structural_drift/SD022` findings ("doc references `src/Burble/`"
and "`src/core/`") because hypatia's rename-drift heuristic has no cross-repo
awareness and flags any `src/<dir>/` it cannot resolve locally — even a citation
the doc explicitly attributes to a sibling repo.

Rather than grow the baseline with two more acknowledged false positives, cite
those two sibling artefacts by module/file name instead of by `src/<dir>/` path
(`Burble.ABI.NearbyPresence` Idris2 module; panll's `EventChain.res` parser).
The references stay accurate and the SD022 trigger disappears, so the gate stays
maximally strict with no new suppressions. Greens the Hypatia baseline on main.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172RBMz3qYjb1ttzD2i7RNh
RUSTSEC-2026-0204 (published 2026-07-06) reports an invalid pointer dereference
in crossbeam-epoch's `fmt::Pointer` impl for `Atomic`/`Shared` when the
underlying pointer is invalid; fixed in 0.9.20. crossbeam-epoch is a transitive
dependency, so this newly-landed advisory turned `rust-ci / Cargo audit` red on
every neurophone branch (main included) without any local code change.

Surgical `cargo update -p crossbeam-epoch --precise 0.9.20` — only the version
and checksum move; the crate's own dependency subtree (crossbeam-utils) is
unchanged.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0172RBMz3qYjb1ttzD2i7RNh
@sonarqubecloud

sonarqubecloud Bot commented Jul 9, 2026

Copy link
Copy Markdown

@hyperpolymath
hyperpolymath marked this pull request as ready for review July 9, 2026 22:15
@hyperpolymath
hyperpolymath merged commit 902ea86 into main Jul 9, 2026
36 checks passed
@hyperpolymath
hyperpolymath deleted the claude/neurophone-repo-setup-envzix branch July 9, 2026 22:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants